package com.schoolcloud.serve.service;

import com.schoolcloud.common.model.PageDTO;
import com.schoolcloud.serve.dto.GoodsCreateDTO;
import com.schoolcloud.serve.dto.GroupAttributeValuesDTO;
import com.schoolcloud.serve.dto.SkuAndSaleAttributeAndPictureDTO;
import com.schoolcloud.serve.dto.SkuModifyDTO;
import com.schoolcloud.serve.entity.Spu;
import com.schoolcloud.serve.query.SkuAttributeQuery;
import com.schoolcloud.serve.query.SpuQuery;
import com.schoolcloud.serve.vo.AttributeAssociatedVO;
import com.schoolcloud.serve.vo.SkuItemDetailVO;

import java.util.List;

/**sku中间表，跨表操作在此处
 * @author hongmizfb
 * @date 2025/04/21
 */
public interface SkuInteractionService {


    void createGoods(GoodsCreateDTO goodsSaveDTO);

    void modifySku(SkuModifyDTO dto);

    SkuModifyDTO getSkuModifyDTO(String id);

    PageDTO<AttributeAssociatedVO> getSkuAttributePageByGroup(SkuAttributeQuery query);


    /**可用于修改spu，展示spu分组信息，因此分组里面具有分组属性值
     * @param categoryId
     * @param spuId
     * @return {@link List }<{@link GroupAttributeValuesDTO }>
     */
    List<GroupAttributeValuesDTO> getAttrGroupAndValuesByCategoryIdAndSpuId(String categoryId, String spuId);

    SkuItemDetailVO getSkuDetail(String id);
}
